In streaming videos using a content provider controlled (CPC) video player, content providers can dynamically insert videos, such as an advertisement, using features embedded within the CPC video player. In sharp contrast to streaming videos using a CPC video player, many streaming video environments, such as when using a mobile device, use a video player not controlled by the content provider to stream video content hosted by the content provider. Without control of the video player, a content provider can face challenges in dynamically streaming videos with additional stitched-in video content.
One method to stitch video content within an existing video is to take a host video and an insert video and run both through a transcoder that can decode, re-encode and repackage the host video and the insert video as a new video. However, transcoding a large set of videos can be associated with expensive computational costs, particularly for a large scale content provider. In addition, when stitching a host video and an insert video, such as advertisement, the new video can quickly become stale. For example, an advertisement relating to an upcoming event or a temporary product may not be relevant for the full life cycle of the host video. Therefore, it would be useful to be able to dynamically stitch a video without being dependent on control of the video player or transcoding.